package com.linwen.excise.huaweiOJ;

/**
 * @ClassName HJ
 * @Description
 * @Author lin
 * @Date 2022/2/23 下午9:31
 * @Version V1.0
 */

import java.util.Scanner;

/**
 *描述
 * 输入整型数组和排序标识，对其元素按照升序或降序进行排序
 *
 * 数据范围： 1 \le n \le 1000 \1≤n≤1000  ，元素大小满足 0 \le val \le 100000 \0≤val≤100000
 * 输入描述：
 * 第一行输入数组元素个数
 * 第二行输入待排序的数组，每个数用空格隔开
 * 第三行输入一个整数0或1。0代表升序排序，1代表降序排序
 *
 * 输出描述：
 * 输出排好序的数字
 *
 * 8
 * 1 2 4 9 3 55 64 25
 * 0
 *
 * 1 2 3 4 9 25 55 64
 * */

public class HJ101 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int n = scanner.nextInt();
        int[] arr = new int[n];
        for (int i = 0; i < n; i++) {
            arr[i] = scanner.nextInt();
        }
        int sort = scanner.nextInt();
        fun(arr,sort);
    }

    private static void fun(int[] arr, int sort) {
        // 选择排序  每次选其中的最大值
        int minIndex;
        for (int i = 0; i < arr.length-1; i++) {
            minIndex = i;
            for (int j = i+1; j < arr.length; j++) {
                minIndex = arr[minIndex]<arr[j]?minIndex:j;
            }
            int temp = arr[minIndex];
            arr[minIndex] = arr[i];
            arr[i] = temp;
        }
        if(sort==0){
            for (int i = 0; i < arr.length; i++) {
                System.out.print(arr[i]+"  ");
            }
        }else {
            for (int i = arr.length-1; i >= 0; i--) {
                System.out.print(arr[i]+"  ");
            }
        }

    }
}
